/*
    相对开音节构成的结构为辅音+元音(aeiou)+辅音(r除外)+e
    常见的单词有bike cake
    给定一个字符串，以空格为分隔符
    反转每个单词的字母
    若单词中包含如数字等其他非字母时不进行反转
    反转后计算其中含有相对开音节结构的子串个数
    (连续子串中部分字符可以重复)

    输入描述
      字符串 以空格分割的多个单词
      长度<10000 字母只考虑小写

    输出描述
        含有相对开音节结构的子串个数

    示例1：
      输入
        ekam a ekac
      输出
        2
      说明：
        反转后为  make a cake 其中make和cake为相对开音节子串
        返回2

    示例2：
        输入
          !ekam a ekekac
        输出
            2
        说明
            反转后为 !ekam a cakeke
            因为!ekam含有非英文字母，所以未反转
            其中 cake和keke 为相对开音节子串 返回2

    */
let str = 'ekam a ekac';
const reverseStrToArr = (str) =>{
  let arr = str.split(' ');
  let yuanyin = [];
  arr.forEach((v) => {
    if(/^[a-zA-Z]+$/.test(v)){
      yuanyin.push(v.split('').reverse().join(''))
    }
  })
  return yuanyin;
}
const getTotal = (arr) =>{
  let count = 0;
  arr.forEach((v) => {
    if(v.length === 4){
      if(!isYuanyin(v[0])
      &&isYuanyin(v[1])
      &&!isYuanyin(v[2])
      &&v[3] === 'e'){
        count++
      }
    }
  })
  return count;
}
const isYuanyin = (str) => {
  return str === 'a' || str === 'e' || str === 'i' || str === 'o' || str === 'u'
}
let a = reverseStrToArr(str);
console.log(getTotal(a))